﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ArmoryData.Character
{
    public class AchievementCategory
    {
        /// <summary>
        /// Gets or sets the id of this <see cref="AchievementCategory"/>.
        /// </summary>
        public int Id { get; set; }
        /// <summary>
        /// Gets or sets the name of this <see cref="AchievementCategory"/>.
        /// </summary>
        public string Name { get; set; }
        /// <summary>
        /// Gets or sets the number of <see cref="Achievement"/>s earned in this <see cref="AchievementCategory"/>.
        /// </summary>
        public int Earned { get; set; }
        /// <summary>
        /// Gets or sets the total number of <see cref="Achievement"/>s in this <see cref="AchievementCategory"/>.
        /// </summary>
        public int Total { get; set; }
        /// <summary>
        /// Gets or sets a list of the child categories of this <see cref="AchievementCategory"/>.
        /// </summary>
        public List<AchievementCategory> Children { get; set; }
        /// <summary>
        /// Gets or sets the list of <see cref="Achievement"/>s in this <see cref="AchievementCategory"/>.
        /// </summary>
        public List<Achievement> Achievements { get; set; }

        /// <summary>
        /// Initializes a new instance of the <see cref="AchievementCategory"/> class.
        /// </summary>
        public AchievementCategory()
        {
            Children = new List<AchievementCategory>();
            Achievements = new List<Achievement>();
        }
    }
}
